Hello
I would like to know if it possible to kill or stop script in interaction mode ? when we have infinity loop for example.
I work on DOORS 8.2
obiwane - Mon Mar 19 13:06:29 EDT 2012 |
|
Re: how to kill interaction mode llandale - Mon Mar 19 13:57:17 EDT 2012
Nope.
I did make this method where the script would check some flag to say if it is commanded to stop, and use a 2nd DOORS client session to set the flag, but it doesn't work very well.
|
|
Re: how to kill interaction mode SystemAdmin - Tue Mar 20 07:51:53 EDT 2012
One method is to use the runLim pragma, which you set at the start of your code (there is also a default value if nothing is set, thus your script will pop up a dialog if running an infinite loop):
pragma runLim, int cyc
sets the time-out interval cyc as a number of DXL execution cycles. The time-out is suppressed if cyc is set to zero, as shown in the following example:
pragma runLim, 0 // no limit
pragma runLim, 1000000 // explicit limit
-
Pekka Mäkinen - http://www.softqa.eu/
|
|
Re: how to kill interaction mode Mathias Mamsch - Tue Mar 20 08:58:34 EDT 2012 SystemAdmin - Tue Mar 20 07:51:53 EDT 2012
One method is to use the runLim pragma, which you set at the start of your code (there is also a default value if nothing is set, thus your script will pop up a dialog if running an infinite loop):
pragma runLim, int cyc
sets the time-out interval cyc as a number of DXL execution cycles. The time-out is suppressed if cyc is set to zero, as shown in the following example:
pragma runLim, 0 // no limit
pragma runLim, 1000000 // explicit limit
-
Pekka Mäkinen - http://www.softqa.eu/
Well if you are technically versatile enough, you may write a program that will attach as a debugger process to DOORS.exe and apply a memory patch so you will get a DXL run limit timeout, an exception or something like that. But the reason nobody has done this yet is probably, because DOORS freezing is annoying but its only one of the annoying things that you get used to, when programming DXL a lot.
Regards, Mathias
Mathias Mamsch, IT-QBase GmbH, Consultant for Requirement Engineering and D00RS
|
|
Re: how to kill interaction mode llandale - Tue Mar 20 12:08:53 EDT 2012 SystemAdmin - Tue Mar 20 07:51:53 EDT 2012
One method is to use the runLim pragma, which you set at the start of your code (there is also a default value if nothing is set, thus your script will pop up a dialog if running an infinite loop):
pragma runLim, int cyc
sets the time-out interval cyc as a number of DXL execution cycles. The time-out is suppressed if cyc is set to zero, as shown in the following example:
pragma runLim, 0 // no limit
pragma runLim, 1000000 // explicit limit
-
Pekka Mäkinen - http://www.softqa.eu/
Oops oh yes. The default is 1000000 which is not very long but does not include the time it takes to load from the database. So perhaps set it higher and when prompted go ahead and double the timeout a couple times, then figure you are in an infinate loop and break. You will get a DXL error where it broke.
pragma runLim, 3000000
|
|